#ifndef MQTT_CONFIG_H
#define MQTT_CONFIG_H

// MQTT配置参数
#define MQTT_BROKER_HOST        "localhost"           // 本地MQTT代理服务器地址
#define MQTT_BROKER_PORT        1883                   // MQTT代理服务器端口
#define MQTT_KEEPALIVE          60                     // 保活间隔(秒)
#define MQTT_CLIENT_ID          "embedded_device"      // 客户端ID
#define MQTT_USERNAME           NULL                   // 用户名(可选)
#define MQTT_PASSWORD           NULL                   // 密码(可选)

// 主题定义
#define MQTT_TOPIC_STATUS       "device/status"        // 设备状态主题
#define MQTT_TOPIC_COMMAND      "device/command"       // 设备命令主题
#define MQTT_TOPIC_DATA         "device/data"          // 设备数据主题
#define MQTT_TOPIC_HEARTBEAT    "device/heartbeat"     // 心跳主题

// QoS等级
#define MQTT_QOS_0              0                      // 最多一次
#define MQTT_QOS_1              1                      // 至少一次
#define MQTT_QOS_2              2                      // 只有一次

// 重连配置
#define MQTT_RECONNECT_DELAY    5                      // 重连延迟(秒)
#define MQTT_MAX_RECONNECT      10                     // 最大重连次数

// 消息配置
#define MQTT_MAX_MESSAGE_SIZE   1024                   // 最大消息长度
#define MQTT_MAX_TOPIC_SIZE     256                    // 最大主题长度

// 嵌入式系统兼容性配置
#ifdef EMBEDDED_SYSTEM
    #define MQTT_LOG_LEVEL      0                      // 日志级别(0=关闭,1=错误,2=警告,3=信息)
    #define MQTT_BUFFER_SIZE    512                    // 缓冲区大小
#else
    #define MQTT_LOG_LEVEL      3
    #define MQTT_BUFFER_SIZE    1024
#endif

#endif // MQTT_CONFIG_H